using System;
using System.Collections.Generic;
using System.Text;

namespace Adoor.Domain.Tiers
{
    public abstract class StatusInvalidite
    {

        public virtual DateTime Date_Invalidite
        {
            get
            {
                return this.m_Date_Invalidite;
            }
            set
            {
                this.m_Date_Invalidite = value;
            }
        }

        public virtual DateTime Date_Notification_Invalidite
        {
            get
            {
                return this.m_Date_Notification_Invalidite;
            }
            set
            {
                this.m_Date_Notification_Invalidite = value;
            }
        }

        public virtual String AuthoriteInvalidite
        {
            get
            {
                return this.m_AuthoriteInvalidite;
            }
            set
            {
                this.m_AuthoriteInvalidite = value;
            }
        }

        /// <summary>
        /// Called when user is creating a new entity.
        /// </summary>
        protected virtual void OnCreate(object[] args)
        {
            this.Date_Invalidite = new DateTime(1800, 1, 1);
            this.Date_Notification_Invalidite = new DateTime(1800, 1, 1);
            this.AuthoriteInvalidite = string.Empty;
            

        }

        /// <summary>
        /// Called when user is retreiving an entity from storage
        /// </summary>
        protected virtual void OnMaterialize()
        {

        }

        protected abstract System.String m_AuthoriteInvalidite { get;set;}
        protected abstract System.DateTime m_Date_Notification_Invalidite { get;set;}
        protected abstract System.DateTime m_Date_Invalidite { get;set;}

    }
}
